热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

漫画|单元测试实在是太可怕了!

周一刚上班,会议室就传来了经理老梁的咆哮。张大胖和何小痩赶紧分析原因许久都没人敢发言。老梁打开了电脑,决定给程序员上一课。新版本的开发又开始了。张大胖无

周一刚上班,会议室就传来了经理老梁的咆哮。

e721aec79b3be26b9ba87977b34d2bf6.png

张大胖和何小痩赶紧分析原因

9efad8104239343642d9414a14f27d0b.png

716c6e4b529a99f84c63040d9bb00f01.png

许久都没人敢发言。

老梁打开了电脑,决定给程序员上一课。

2262a83db3efeba9bbbbdad8d85074d2.png

7a17c553a143fa18f969f5c2585003b8.png

3ab1b545bd594672c89ce1994fe8c840.png

新版本的开发又开始了。

60426dcc2feccd6a89def8f76d87f947.png

c35751e713b361a57c5016b86106dc44.png

5ef9408f1ba245f97cb89be4a2cedbe4.png

张大胖无奈,只好加班写单元测试用例

3969594d754ab9e66d286a6728860057.png

过了两天,老梁又来找张大胖了

486cf24d176edeb71efdb76e6e1206e1.png

既然如此,张大胖也没有心情再认真地写测试了。

5c3ed8d5aa11d865912cc7fcc2e475ae.png

cad02fce6da2625439cc9f5ba994cf44.png

4d755c56141c427023ecb00a0830e177.png

无可奈何的何小痩,也开始应付起来

21363025fee636cb8dc3b1d7ba149677.png

大家热火朝天地写单元测试,只有小崔是例外。

23f0337ef70fcfcb23a9b9bec70c9a40.png

37057d513c7998318d902fd48c19aeba.png

145edd1cdac949c232c3846a63ab11c0.png

小崔很快就学会了张大胖的做法......

a88ea7271ac674f4d0aeb904e8c2b893.png

有一天,何小痩的代码居然让张大胖的单元测试失败了。

ba9e53e25b19153b4b604aec8461dd70.png

d135970e232c116ae86615947814a214.png

9a91628be7e5a35edcb9be48b27cf139.png

53a10c88a377453e44a32d92bab1d272.png

在大家的努力下,经理终于看到了漂亮的报表。

ca3f9da200b30d27788ded5611dd6474.png

新版本上线了,没想到Bug数比上个版本只多不少,老梁傻眼了。

9c4518a006150b72c1cec51ebab553ac.png

c3d79a449249fda806f21c40462808ca.png

单元测试是好东西吗?当然是!

但是在实施单元测试的时候,真正地重视起来,循序渐进地执行了吗?

有没有给程序员留足时间?

人员的培训是否到位?观念是不是统一了?

能不能不赶进度?

需求能不能稳定下来?

对于那些难以写测试的地方,有没有总结出最佳实践?

......

在把这些问题解决之前,就开始大干快上,采用运动式的方式做单元测试,注定是要失败的。

3ebf76642f14585918998de0fd2e21a1.png

98a612f02d1acc2fe855bb2ce60a8b4f.png

fa2169751d9c4dd68b6a46848ec1d419.png

6c0a03ad8e48dd3bfeaf6584ea9028e3.png

点击下方图片,查看更多精彩

f94a9676b99f0459b4a5a7af2c415e2e.png

39e83bf8e7c958672dd53f2e4978d464.png

bd46e310ed43c059f4eca7a06e99dd92.png

2fb7b412074adcf91773ff0970939ad6.png

35f8e5ded710ea73dc8be38148045461.png


推荐阅读
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 本文探讨了 TypeScript 中泛型的重要性和应用场景,通过多个实例详细解析了泛型如何提升代码的复用性和类型安全性。 ... [详细]
  • Ashley Wood限量版画国内首发,双十一不如来笔投资?
    Ashley Wood限量版画国内首发,双十一不如来笔投资? ... [详细]
  • 本文介绍了在 iOS 开发中设置图片和视图圆角的几种方法,包括通过 layer 设置圆角、使用贝塞尔曲线和 Core Graphics 框架,以及使用 CAShapeLayer 和 UIBezierPath。每种方法都有其优缺点,适用于不同的场景。 ... [详细]
  • WPF项目学习.一
    WPF项目搭建版权声明:本文为博主初学经验,未经博主允许不得转载。一、前言记录在学习与制作WPF过程中遇到的解决方案。使用MVVM的优点是数据和视图分离,双向绑定,低耦合,可重用行 ... [详细]
  • 本文详细介绍如何在忘记MySQL服务器密码的情况下进行密码重置,包括具体的步骤和注意事项。 ... [详细]
  • 使用HTML和JavaScript实现视频截图功能
    本文介绍了如何利用HTML和JavaScript实现从远程MP4、本地摄像头及本地上传的MP4文件中截取视频帧,并展示了具体的实现步骤和示例代码。 ... [详细]
  • 作者郝林回顾了撰写Go语言技术专栏的历程,从最初的拒绝到最终的完成,分享了期间的心路历程和技术挑战。 ... [详细]
  • 在 iOS 设备上使用系统 API 进行视图截图时,有时会遇到图片拼接处出现白边的问题。 ... [详细]
  • 本文介绍了如何使用Adobe Photoshop将图片调整为800x800像素,并确保图片清晰度不受影响,特别适合用于制作淘宝主图。无论是原始图片大于或小于800x800像素,都能通过以下步骤轻松完成。 ... [详细]
  • 无论是在迁移到云服务还是更换云服务商的过程中,数据迁移都是一个至关重要的环节。本文将探讨数据迁移中可能遇到的问题及解决方案,包括路径问题、速度问题和数据完整性等。 ... [详细]
  • 了解像素与厘米之间的转换关系对于图像处理至关重要。本文将详细解释像素与厘米的换算方法,并探讨不同分辨率下的具体应用。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • 本文详细介绍了如何使用JavaScript实现面部交换功能,包括基本原理和具体实现步骤。 ... [详细]
  • 本文将详细介绍如何在佳明手表上选择和设置原有的或自定义的表盘,帮助用户轻松完成个性化设置。 ... [详细]
author-avatar
邱walz_297
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有